<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        "use strict";
        // 1.变量名必须先声明再使用
        // num = 10;
        // console.log(num);
        var num = 10;
        console.log(num);

        // 2.不能随意删除已经声明好的变量
        // delete num;

        // 3.严格模式下全局作用域中函数中的this是undefined
        // function fn() {
        //     console.log(this);
        // }
        // fn();

        // 4.严格模式下,如果构造函数不加new调用,this指向undefined如果给他赋值 则会报错
        // function Star() {
        //     this.sex = '男';
        // }
        // var ldh = new Star();
        // console.log(ldh.sex);

        // 5.定时器this还是指向window
        // setTimeout(function() {
        //     console.log(this);
        // }, 2000);

        // 6.严格模式下函数里面的参数不允许有重名
        // function fn(a, a) {
        //     console.log(a + a);
        // };
        // fn(2, 1);

        // 7.尽量不要在if for等等代码块里声明函数
    </script>
</body>

</html>